package br.siseventos.model;
// Generated 29/10/2012 23:23:36 by Hibernate Tools 3.2.1.GA

import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.UniqueConstraint;

/**
 * TaAlocacaoServico generated by hbm2java
 */
@Entity
@Table(name = "ta_alocacao_servico", catalog = "SisEventosDB", uniqueConstraints =
@UniqueConstraint(columnNames = {"cod_atividade", "cod_servico_prestador"}))
public class TaAlocacaoServico extends BaseModel {

    private Integer idtAlocacaoServico;
    private TbAtividade tbAtividade;
    private TaServicoPrestador taServicoPrestador;
    private TbUsuario tbUsuario;
    private Date dtaAlocacaoServico;
    private char stsAlocacaoServico;
    private Date dtaInclusao;
    private String obsAlocacaoServico;

    public TaAlocacaoServico() {
    }

    public TaAlocacaoServico(TbAtividade tbAtividade, TaServicoPrestador taServicoPrestador, TbUsuario tbUsuario, Date dtaAlocacaoServico, char stsAlocacaoServico, Date dtaInclusao) {
        this.tbAtividade = tbAtividade;
        this.taServicoPrestador = taServicoPrestador;
        this.tbUsuario = tbUsuario;
        this.dtaAlocacaoServico = dtaAlocacaoServico;
        this.stsAlocacaoServico = stsAlocacaoServico;
        this.dtaInclusao = dtaInclusao;
    }

    public TaAlocacaoServico(TbAtividade tbAtividade, TaServicoPrestador taServicoPrestador, TbUsuario tbUsuario, Date dtaAlocacaoServico, char stsAlocacaoServico, Date dtaInclusao, String obsAlocacaoServico) {
        this.tbAtividade = tbAtividade;
        this.taServicoPrestador = taServicoPrestador;
        this.tbUsuario = tbUsuario;
        this.dtaAlocacaoServico = dtaAlocacaoServico;
        this.stsAlocacaoServico = stsAlocacaoServico;
        this.dtaInclusao = dtaInclusao;
        this.obsAlocacaoServico = obsAlocacaoServico;
    }

    @Id
    @GeneratedValue(strategy = IDENTITY)
    @Column(name = "idt_alocacao_servico", unique = true, nullable = false)
    public Integer getIdtAlocacaoServico() {
        return this.idtAlocacaoServico;
    }

    public void setIdtAlocacaoServico(Integer idtAlocacaoServico) {
        this.idtAlocacaoServico = idtAlocacaoServico;
    }

    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "cod_atividade", nullable = false)
    public TbAtividade getTbAtividade() {
        return this.tbAtividade;
    }

    public void setTbAtividade(TbAtividade tbAtividade) {
        this.tbAtividade = tbAtividade;
    }

    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "cod_servico_prestador", nullable = false)
    public TaServicoPrestador getTaServicoPrestador() {
        return this.taServicoPrestador;
    }

    public void setTaServicoPrestador(TaServicoPrestador taServicoPrestador) {
        this.taServicoPrestador = taServicoPrestador;
    }

    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "cod_usuario", nullable = false)
    public TbUsuario getTbUsuario() {
        return this.tbUsuario;
    }

    public void setTbUsuario(TbUsuario tbUsuario) {
        this.tbUsuario = tbUsuario;
    }

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "dta_alocacao_servico", nullable = false, length = 19)
    public Date getDtaAlocacaoServico() {
        return this.dtaAlocacaoServico;
    }

    public void setDtaAlocacaoServico(Date dtaAlocacaoServico) {
        this.dtaAlocacaoServico = dtaAlocacaoServico;
    }

    @Column(name = "sts_alocacao_servico", nullable = false, length = 1)
    public char getStsAlocacaoServico() {
        return this.stsAlocacaoServico;
    }

    public void setStsAlocacaoServico(char stsAlocacaoServico) {
        this.stsAlocacaoServico = stsAlocacaoServico;
    }

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "dta_inclusao", nullable = false, length = 19)
    public Date getDtaInclusao() {
        return this.dtaInclusao;
    }

    public void setDtaInclusao(Date dtaInclusao) {
        this.dtaInclusao = dtaInclusao;
    }

    @Column(name = "obs_alocacao_servico", length = 512)
    public String getObsAlocacaoServico() {
        return this.obsAlocacaoServico;
    }

    public void setObsAlocacaoServico(String obsAlocacaoServico) {
        this.obsAlocacaoServico = obsAlocacaoServico;
    }
}
